+Tue Oct 5 17:06:26 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): if REQUEST_NEEDED is still
+ set on ::size-allocate, another size-request has been queued since
+ ::size-request and needs to be requeued.
+
2004-10-05 Paolo Borelli <pborelli@katamail.com>
* gtk/gtkmenutoolbutton.c: rename the activate-menu signal to
+Tue Oct 5 17:06:26 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): if REQUEST_NEEDED is still
+ set on ::size-allocate, another size-request has been queued since
+ ::size-request and needs to be requeued.
+
2004-10-05 Paolo Borelli <pborelli@katamail.com>
* gtk/gtkmenutoolbutton.c: rename the activate-menu signal to
+Tue Oct 5 17:06:26 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): if REQUEST_NEEDED is still
+ set on ::size-allocate, another size-request has been queued since
+ ::size-request and needs to be requeued.
+
2004-10-05 Paolo Borelli <pborelli@katamail.com>
* gtk/gtkmenutoolbutton.c: rename the activate-menu signal to
+Tue Oct 5 17:06:26 2004 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkwidget.c (gtk_widget_size_allocate): if REQUEST_NEEDED is still
+ set on ::size-allocate, another size-request has been queued since
+ ::size-request and needs to be requeued.
+
2004-10-05 Paolo Borelli <pborelli@katamail.com>
* gtk/gtkmenutoolbutton.c: rename the activate-menu signal to
old_allocation.y != real_allocation.y);
if (!alloc_needed && !size_changed && !position_changed)
- return;
+ {
+ if (GTK_WIDGET_REQUEST_NEEDED (widget))
+ { /* another resize has been queued */
+ gtk_widget_queue_resize (widget);
+ }
+ return;
+ }
g_signal_emit (widget, widget_signals[SIZE_ALLOCATE], 0, &real_allocation);
gtk_widget_invalidate_widget_windows (widget->parent, invalidate);
gdk_region_destroy (invalidate);
}
+
+ if (GTK_WIDGET_REQUEST_NEEDED (widget))
+ { /* another resize has been queued */
+ gtk_widget_queue_resize (widget);
+ }
}
/**